package com.woniuxy.service;

import java.util.Date;
import java.util.List;

import java.util.List;

import com.woniuxy.entity.CategoryOne;
import com.woniuxy.entity.CategoryTwo;
import com.woniuxy.entity.Product;

import org.apache.ibatis.annotations.Param;

import com.github.pagehelper.PageInfo;

import com.woniuxy.entity.Perms;
import com.woniuxy.entity.Roles;

import com.woniuxy.entity.Secutity;

import com.woniuxy.entity.User;

public interface UserService {

	// 根据账户查询用户信息
	public User findByAccount(String account);

	// 查询用户角色信息
	public User findRolesAndPerms(String account);

	// 添加注册用户信息
	public boolean addUser(User user);

	// 注册用户添加角色信息到user_roles表
	public boolean addUserRoles(String account);

	// 根据id查找用户
	public User find(int uid);

	// 根据用户id和旧密码修改用户密码
	public int updatepwdbyuid(int uid, String oldpwd, String newpwd,String account);

	// 更改用户资料
	public int upinfo(User user);

	// 更换头像
	public int updateHeadImg(User user);

	// 查找用户密码
	public String findpwdbyuid(int uid);

	// 通过密保找回密码
	public String findPasswordBysecutityquestion(String question, int u_id, String answer);

	// 查找用户所有密保问题
	public List<Secutity> findquestion(int u_id);

	// 查找当前用户密保问题的数量
	public int findSecutityCount(int u_id);

	// 添加密保
	public int addsecutity(String question, String answer, int u_id);

	// 修改密保问题和答案
	public int setsecurity(String question, String answer, int u_id, String newquestion);

//注册用户添加角色信息到user_roles表

	public User findUserByUid(int u_id);

	public PageInfo<User> allUser(int pageNum, int pageSize);

	public List<Roles> findRolesByUid(int u_id);

	public List<Perms> findPermsByRid(int ro_id);

	public int updataStatus(int u_id, Date regtime, int status);

	public int batchUpdateUsers(@Param("status") Integer status, @Param("ids") int[] ids);

	public int batchDeleteUsers(@Param("ids") int[] ids);

}
